package mysql

import (
	"e_mall_server/models"
	"go.uber.org/zap"
)

/**
 * @Author: zhaobin
 * @Description TODO
 * @Date: 2022-05-18 18:12
 */

// GetCartList 获取购物车列表接口
func GetCartList(query map[string]interface{}) ([]models.Cart, error) {
	var CartList []models.Cart
	if err := db.Where(query).Find(&CartList).Error; err != nil {
		return nil, err
	}
	return CartList, nil
}

// AddCart 添加购物车信息
func AddCart(Cart *models.Cart) error {
	zap.L().Debug("mysql.AddCart()", zap.Any("购物车信息", Cart))
	// 进行数据库添加操作
	return db.Create(Cart).Error
}

// UpdateCart 修改购物车信息
func UpdateCart(Cart *models.Cart) int64 {
	// 进行数据库修改操作
	return db.Debug().Model(&Cart).Updates(&Cart).RowsAffected
}

// DeleteCartById 通过购物车id删除购物车数据
func DeleteCartById(id int64) int64 {
	return db.Delete(&models.Cart{Id: id}).RowsAffected
}

// GetCartDetailById 通过购物车id获取购物车详细信息
func GetCartDetailById(id int64) (Cart models.Cart, err error) {
	Cart.Id = id
	err = db.Where("id = ?", id).Find(&Cart).Error
	return
}
